Also have ImagePage check that the given language is actually
valid, before trying to transform with that language.
Change-Id: I62b8035b70f5cb3388f4c2a844f3bc1c7c92d01e
$renderLang = $request->getVal( 'lang' );
if ( !is_null( $renderLang ) ) {
$renderLang = $request->getVal( 'lang' );
if ( !is_null( $renderLang ) ) {
- $params['lang'] = $renderLang;
+ $handler = $this->displayImg->getHandler();
+ if ( $handler && $handler->validateParam( 'lang', $renderLang ) ) {
+ $params['lang'] = $renderLang;
+ } else {
+ $renderLang = null;
+ }
}
$width_orig = $this->displayImg->getWidth( $page );
}
$width_orig = $this->displayImg->getWidth( $page );
if ( !$haveDefaultLang ) {
// Its hard to know if the content is really in the default language, or
// if its just unmarked content that could be in any language.
if ( !$haveDefaultLang ) {
// Its hard to know if the content is really in the default language, or
// if its just unmarked content that could be in any language.
- $opts = Xml::option( wfMessage( 'img-lang-default' )->text(), '', $defaultLang === $curLang ) . $opts;
+ $opts = Xml::option( wfMessage( 'img-lang-default' )->text(), $defaultLang, $defaultLang === $curLang ) . $opts;
}
if ( !$haveCurrentLang && $defaultLang !== $curLang ) {
$name = Language::fetchLanguageName( $curLang, $this->getContext()->getLanguage()->getCode() );
}
if ( !$haveCurrentLang && $defaultLang !== $curLang ) {
$name = Language::fetchLanguageName( $curLang, $this->getContext()->getLanguage()->getCode() );
return ( $value > 0 );
} elseif ( $name == 'lang' ) {
// Validate $code
return ( $value > 0 );
} elseif ( $name == 'lang' ) {
// Validate $code
- if ( !Language::isValidBuiltinCode( $value ) ) {
+ if ( $value === '' || !Language::isValidBuiltinCode( $value ) ) {
wfDebug( "Invalid user language code\n" );
return false;
wfDebug( "Invalid user language code\n" );
return false;